package com.zzyl.nursing.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zzyl.nursing.domain.FamilyMember;
import com.zzyl.nursing.dto.*;
import com.zzyl.nursing.vo.FamilyListVo;
import com.zzyl.nursing.vo.FamilyMemberListVo;
import com.zzyl.nursing.vo.LoginVo;

import java.util.List;
import java.util.Map;

/**
 * 老人家属Service接口
 * 
 * @author ruoyi
 * @date 2025-07-31
 */
public interface IFamilyMemberService extends IService<FamilyMember> {

    /**
     * 小程序登录
     * @param userLoginRequestDto
     * @return
     */
    LoginVo login(UserLoginRequestDto userLoginRequestDto);

    /*
     * 绑定家人
     * */
    void add(FamilyDto familyDto);

    /*
    * 查询家人列表
    * */
    List<FamilyListVo> listFamilyMembers();

    /*
    * 分页查询家人列表
    * */
    List<FamilyMemberListVo> findByPage(Integer pageNum, Integer pageSize);

    /**
     * 查询健康数据
     */
    Map<String, HealthDataDto> selectHealthData(DeviceDto deviceDto);

    /**
     * 按天统计查询指标数据
     *
     * @param queryDeviceDataByDayDto 查询参数
     * @return
     */
    List<Map<String, Object>> queryDeviceDataListByDay(QueryDeviceDataByDayDto queryDeviceDataByDayDto);


    /**
     * 按周统计查询指标数据
     */
    List<Map<String, Object>> queryDeviceDataListByWeek(QueryDeviceDataByDayDto queryDeviceDataByDayDto);
    /*
    * 解除绑定
    * */
    void deleteById(Long id);
}
